package com.tulele.vtool.service;

import com.github.pagehelper.PageInfo;
import com.tulele.vtool.model.UserCommodityInfo;

import java.util.List;

public interface IUserCommodityInfoService {

    /**
     * 获取商品详情
     * @param commodityId
     * @return
     */
    UserCommodityInfo getCommodityDetailInfo(Integer commodityId);

    /**
     * 获取用户指定数目的商品信息
     * @param userId
     * @param recordSize
     * @return
     */
    List<UserCommodityInfo> getUserCommodityInfoBySpecialSize(Integer userId, Integer brandId, int recordSize);

    /**
     * 获取用户商品信息
     * @param userId
     * @return
     */
    PageInfo<UserCommodityInfo> getUserCommodityInfo(Integer userId, Integer brandId, int pageNum, int PageSize);

    /**
     * 伪删除商品信息
     * @param commodityId
     * @return
     */
    int pseudoDeleteCommodityInfo(Integer commodityId);

    /**
     * 创建商品信息
     * @param userCommodityInfo
     * @return
     */
    int createUserCommodityInfo(UserCommodityInfo userCommodityInfo);

    /**
     * 修改商品信息
     * @param userCommodityInfo
     * @return
     */
    int modifyCommodityInfo(UserCommodityInfo userCommodityInfo);

    /**
     * 置顶商品信息
     * @param userId
     * @param commodityId
     * @return
     */
    int stickCommodityInfo(Integer userId, Integer commodityId);

    /**
     * 移除用户所有商品信息
     * @param userId
     * @param commodityStatus
     * @return
     */
    int removeAllUserCommodityInfo(Integer userId, Integer commodityStatus);

    /**
     * 获取用户有效的品牌商品数目
     * @param userId
     * @param brandId
     * @return
     */
    int getUserBrandCommodityCount(Integer userId, Integer brandId);

    /**
     * 增加用户平台商品信息
     * @param userId
     * @param brandId
     * @return
     */
    int addUserPlatformCommodityInfo(Integer userId, Integer brandId);

}
